package com.zimmur.service.goods;

import java.util.List;

import com.zimmur.model.goods.GoodsColor;
import com.zimmur.model.goods.GoodsSize;
/**
 * 商品尺码服务接口
 * @author Administrator
 *
 */
public interface IGoodsSizeService {
	/**
	 * 根据商品ID获取尺码信息
	 * @param productId 商品ID
	 * @return
	 */
	public List<GoodsSize> selectByGoodsId(long goodsId);
	
	/**
	 * 根据商品ID,颜色码,尺寸大小获取商品价格
	 * @param goodsId
	 * @param colorCode
	 * @param size
	 * @return
	 */
	public GoodsSize selectGoodsByGoodsIdAndColorAndSize(long goodsId,String colorCode,String size);
	/**
	 * 根据商品ID获取商品颜色
	 * @param goodsId
	 * @return
	 */
	public List<GoodsColor> selectGoodsColorByGoodsId(long goodsId);
	/**
	 * 根据记录ID获取当前尺码信息
	 * @param sizeCode
	 * @return
	 */
	public GoodsSize selectbySizeId(long sizeCode);
	/**
	 * 根据付款订单维护商品数量
	 * @param orderId
	 */
	public void mainGoodsInventory(long orderId);
	/**
	 * 根据sizeCode更新库存及销售数
	 * @param sizeCode 	尺码记录ID
	 * @param saleNum 	销售数
	 * @param goodsType 		商品类型
	 * @return
	 */
	public boolean updateInventoryToOccOrSalesNum(long sizeCode, int saleNum,int goodsType);
	/**
	 * 根据sizeCodee取消库存占用
	 * @param sizeCode 尺码记录ID
	 * @param saleNum 销售数
	 * @param goodsType 		商品类型
	 * @return
	 */
	boolean updateOccInventoryToInventory(long sizeCode, int saleNum,int goodsType);
}
